import axios from 'axios';
import router from '../router/index';
import store from '../store/index';
// import Vue from '@/main'

/**
 * 请求失败后的错误统一处理
 * @param {Number} status 请求失败的状态码
 */
const errorHandle = (status, other) => {
    // 状态码判断
    switch (status) {
        // 401: 未登录状态，跳转登录页
        case 401:
            break;
        // 403 token过期
        // 清除token并跳转登录页
        case 403:
            break;
        // 404请求不存在
        case 404:
            break;
        default:
            console.log(other);
        }}

// 创建axios实例
let instance = axios.create({timeout: 1000 * 12});

//请求拦截器
instance.interceptors.request.use(config =>{
	config.headers['Content-Type'] = 'application/x-www-form-urlencoded'
	// config.headers.Authorization = 'Bearer ' + window.sessionStorage.getItem('token');
  const base  = {
    dev: `http://${localStorage.getItem("base_url") ?? '10.145.12.24'}/smartlab/index.php`,
  }
  if(config.url.substr(0,1) === '/') {
    config.url = base.dev + config.url
  }
	console.log(config.url)
	return config
})

// 响应拦截器
instance.interceptors.response.use(
    // 请求成功
    res => {
		if(res.status === 200) {
			return Promise.resolve(res.data)
		} else {
			return Promise.reject(res.data)
		}
	},
    // 请求失败
    error => {
		console.log(error);
    }
  );

export default instance;
